package plugin

type Template interface {
	Name() string
	Dirs() []string
	Files() map[string]string
}

type SimpleTemplate struct {
	templateName string
	dirs         []string
	files        map[string]string
}

func (t SimpleTemplate) Name() string             { return t.templateName }
func (t SimpleTemplate) Dirs() []string           { return t.dirs }
func (t SimpleTemplate) Files() map[string]string { return t.files }

var Templates = make([]Template, 0)

func RegisterTemplate(tmpl Template) {
	Templates = append(Templates, tmpl)
}
